package practice;

import java.util.ArrayList;
import java.util.List;

/**
 * @author ：wangchao
 * @version ：V1.0
 * @program ：MySpringCloud
 * @date ：Created in 2020/10/9 9:55
 * @description ：有n个人围成一圈，顺序排号，从第一个人开始报数（从1~7报数），凡报到7的人退出圈子，问最后留下的人原来排在第几号。
 */
public class LeaveTheLastMan {
    public static void main(String[] args) {
        int n = 7;
        List<Boolean> list = new ArrayList(n);
        for (int i = 0; i < n; i++) {
            list.add(true);
        }
        int leftCount = list.size();
        int number = 0;
        int index = 0;
        while(leftCount > 1){
            if(list.get(index)){
                number ++;
                if(number == 7){
                    leftCount --;
                    list.set(index,false);
                    number = 0;
                }
            }
            index ++;
            if(index == n){
                index = 0;
            }
        }
        for (int i = 0; i < n; i++) {
            if(list.get(i)){
                System.out.println(i);
            }
        }
    }
}